/**
 * Product 业务逻辑
 * @author yanwl
 * @date 2014-08-20
 */
package com.chnbst.bstyun.service;

import java.util.List;
import java.util.Map;

import com.chnbst.bstyun.model.pojo.Product;
import com.chnbst.bstyun.model.vo.ProductIndustryVo;

public interface ProductService {
	/**
	 * 删除产品
	 * @param productId 产品编号
	 * @return 删除成功返回true，否则返回false
	 */
	boolean deleteProduct(Integer productId);

	/**
	 * 添加产品
	 * @param product 产品对象
	 * @return 返回自动增量id对象
	 */
	boolean insertProduct(Product product);
	
	/**
	 * 更新产品
	 * @param product 产品对象
	 * @return 布尔值 成功为true，失败为false
	 */
	boolean updateProduct(Product product);

	/**
	 * 根据产品编号查找产品
	 * @param productId 产品编号
	 * @return 如果找到返回该产品，否则返回空 null
	 */
    Product selectProductByProductId(Integer productId);
    
    /**
     * 根据产品编号查找产品产品行业
     * @param productId 产品编号
     * @return 如果找到返回该产品行业，否则返回空 null
     */
    ProductIndustryVo selectProductIndustryVoByProductId(Integer productId);

    /**
     * 查询所有产品信息
     * @return 返回所有产品信息
     */
    List<Product> selectProducts(Map<String, Object> map);
    
    /**
     * 查询所有产品(id,name)
     * @return 返回所有产品信息
     */
    List<Product> selectAllProducts(Map<String, Object> map);
    
}
